package cn.getech.data.development.model.vo;
import cn.getech.data.development.entity.ConnectFieldInfo;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.List;

/**
 * <p>
 * 配置连接表
 * </p>
 *
 * @author zenith
 * @since 2018-08-22
 */
@Data
public class WebServiceConfConnectVO {


    /**
     * 编号
     */
    private Integer id;

    /**
     * 连接名称
     */
    @NotBlank(message = "连接名称不可为空")
    private String name;
    /**
     * 连接类型
     */
    @NotNull(message = "连接类型不可为空")
    private Integer typeId;


//    @NotNull(message = "连接类型不可为空")
    private String departmentId;

    private Integer departmentType;


    /**
     * 描述
     */
    @NotBlank(message = "数据源描述不可为空")
    private String desc;

    /**
     * 要求类型
     */
    @NotNull(message = "请求方式不可为空")
    private Integer  requestType;

    /**
     * webservice 服务地址
     */
    @NotNull(message = "请求地址不可为空")
    private String webServiceUrl;


    /**
     * 用户名称
     */
    @NotBlank(message = "用户名称不可为空")
    private String username;
    /**
     * 密码
     */
//    @NotBlank(message = "连接密码不可为空")
    private String password;


    /**
     * 编码
     */
    @NotNull(message = "编码不可为空")
    private  Integer code;

    /**
     * 格式
     */
    @NotBlank(message = "格式不可为空")
    private String format;

    /**
     * webService 调用的方法
     */
    @NotBlank(message = "方法名称不可为空")
    private String functionName;


    /**
     * webservice 命名空间
     */
    @NotBlank(message = "方法命名空间不可为空")
    private String targetNameSpace;

//    @NotBlank(message = "输出参数表名不可为空")
    private String outputTableName;

    @TableField(exist=false)
    private List<ConnectFieldInfo> connectFieldInfos;


    /**
     *  初始化授权角色id
     */
    private Long roleId;


}
